import {
  request
} from "../../request/index.js";
import regeneratorRuntime from "../../lib/runtime/runtime";

Page({
  /**
   * 页面的初始数据
   */
  data: {
    // 左侧菜单数据
    leftMenuList: [],
    //右侧商品
    rightContent: [],
    //被点击菜单
    currentIndex: 0,
    // 滚动条位置
    scrollTop: 0
  },
  // 接口返回数据
  Cates: [],

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    //1获取本地存储中的数据(小程序中也是存在本地存储技术)
    const Cates = wx.getStorageSync("cates");
    //2判断
    if (!Cates) {
      //不存在  发送请求获取数据
      this.getCates();
    } else {
      if (Date.now() - Cates.time > 1000 * 600) {
        this.getCates();
      } else {
        this.Cates = Cates.data;
        // 构造左侧数据
        let leftMenuList = this.Cates.map(v => v.cat_name);
        // 构造右侧数据
        let rightContent = this.Cates[0].children;
        this.setData({
          leftMenuList,
          rightContent
        })
      }
    }
  },
  async getCates() {
    // request({
    //     url: "/categories"
    //   })
    //   .then(res => {
    //     this.Cates = res.data.message;
    //     // 存接口数据
    //     wx.setStorageSync("cates", {
    //       time: Date.now(),
    //       data: this.Cates
    //     });
    //     // 构造左侧数据
    //     let leftMenuList = this.Cates.map(v => v.cat_name);
    //     // 构造右侧数据
    //     let rightContent = this.Cates[0].children;
    //     this.setData({
    //       leftMenuList,
    //       rightContent
    //     })
    //   })
    const res = await request({
      url: "/categories"
    });
    this.Cates = res;
    // 存接口数据
    wx.setStorageSync("cates", {
      time: Date.now(),
      data: this.Cates
    });
    // 构造左侧数据
    let leftMenuList = this.Cates.map(v => v.cat_name);
    // 构造右侧数据
    let rightContent = this.Cates[0].children;
    this.setData({
      leftMenuList,
      rightContent
    })
  },
  handleItemTap(e) {
    const {
      index
    } = e.currentTarget.dataset;
    let rightContent = this.Cates[index].children;
    this.setData({
      currentIndex: index,
      rightContent,
      scrollTop: 0
    })

  },


  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})